Skip to content

chore: upgrade to protocol v0.14.0#1891

Open
igamigo wants to merge 42 commits intonextfrom
release/v0.14.0-beta
Open

chore: upgrade to protocol v0.14.0#1891
igamigo wants to merge 42 commits intonextfrom
release/v0.14.0-beta

Conversation

@igamigo
Copy link
Copy Markdown
Collaborator

@igamigo igamigo commented Mar 11, 2026

This PR upgrades protocol to v0.14.

TODO:

  • Add proper description with most notable changes
  • Review changes to see that they comprehensively make sense (we went from protocol version next to 0.14.0-beta.1 to 0.14.0-rc.1 to 0.14.0 quite quickly so a bunch of things accumulated)

@igamigo igamigo force-pushed the release/v0.14.0-beta branch from bd473a1 to ba88a6c Compare March 12, 2026 03:07
@igamigo igamigo force-pushed the release/v0.14.0-beta branch from ba2d82c to 5fb7be3 Compare March 12, 2026 15:13
@igamigo igamigo marked this pull request as ready for review March 12, 2026 15:59
@greenhat
Copy link
Copy Markdown
Contributor

Please update the miden-protocol and miden-standard deps to the version used in 0xMiden/node#1784.

@igamigo
Copy link
Copy Markdown
Collaborator Author

igamigo commented Mar 24, 2026

Please update the miden-protocol and miden-standard deps to the version used in 0xMiden/node#1784.

Currently happening here: #1928
I will pull the update commits here but I'm having trouble adapting some code (though this is mostly solved right now).

EDIT: Now merged back to this branch, Rust integration tests are working but WebClient ones still are not all the way there yet.

igamigo added 3 commits March 24, 2026 14:37
Bring all non-RPC-retry changes (RC bump, integration tests, web-client
updates, CLI fixes, etc.) into the base branch so the PR diff only
shows the RPC retry feature.
@igamigo igamigo changed the title chore: upgrade protocol to beta chore: upgrade to protocol v0.14.0 Mar 25, 2026
@greenhat
Copy link
Copy Markdown
Contributor

0xMiden/node#1784 is merged and the branch is deleted. Please update the node deps. Thank you!

@igamigo igamigo added the blocked Something prevents working on this label Mar 25, 2026
@igamigo

This comment was marked as outdated.

@igamigo igamigo removed the blocked Something prevents working on this label Mar 30, 2026
@greenhat
Copy link
Copy Markdown
Contributor

I see errors when trying to compile the miden-client from this branch. I suspect the next branch of the node repo referenced in the dependencies for the node crates has "run away."

Build log:

   Compiling miden-client v0.14.0 (https://github.com/0xMiden/miden-client?branch=release%2Fv0.14.0-beta#6efc8ce6)
error[E0609]: no field `note_id` on type `NoteSyncRecord`
   --> /Users/green/.cargo/git/checkouts/miden-client-4cc430396025a571/6efc8ce/crates/rust-client/src/rpc/domain/note.rs:156:18
    |
156 |                 .note_id
    |                  ^^^^^^^ unknown field
    |
    = note: available fields are: `metadata_header`, `inclusion_proof`

error[E0609]: no field `inclusion_path` on type `NoteSyncRecord`
   --> /Users/green/.cargo/git/checkouts/miden-client-4cc430396025a571/6efc8ce/crates/rust-client/src/rpc/domain/note.rs:161:18
    |
161 |                 .inclusion_path
    |                  ^^^^^^^^^^^^^^ unknown field
    |
help: a field with a similar name exists
    |
161 -                 .inclusion_path
161 +                 .inclusion_proof
    |

error[E0609]: no field `metadata` on type `NoteSyncRecord`
   --> /Users/green/.cargo/git/checkouts/miden-client-4cc430396025a571/6efc8ce/crates/rust-client/src/rpc/domain/note.rs:168:18
    |
168 |                 .metadata
    |                  ^^^^^^^^ unknown field
    |
    = note: available fields are: `metadata_header`, `inclusion_proof`

error[E0609]: no field `note_index_in_block` on type `NoteSyncRecord`
   --> /Users/green/.cargo/git/checkouts/miden-client-4cc430396025a571/6efc8ce/crates/rust-client/src/rpc/domain/note.rs:174:36
    |
174 |                 u16::try_from(note.note_index_in_block).map_err(|_| {
    |                                    ^^^^^^^^^^^^^^^^^^^ unknown field
    |
    = note: available fields are: `metadata_header`, `inclusion_proof`

error[E0609]: no field `note_id` on type `NoteSyncRecord`
   --> /Users/green/.cargo/git/checkouts/miden-client-4cc430396025a571/6efc8ce/crates/rust-client/src/rpc/domain/transaction.rs:209:14
    |
209 |             .note_id
    |              ^^^^^^^ unknown field
    |
    = note: available fields are: `metadata_header`, `inclusion_proof`

error[E0609]: no field `metadata` on type `NoteSyncRecord`
   --> /Users/green/.cargo/git/checkouts/miden-client-4cc430396025a571/6efc8ce/crates/rust-client/src/rpc/domain/transaction.rs:217:14
    |
217 |             .metadata
    |              ^^^^^^^^ unknown field
    |
    = note: available fields are: `metadata_header`, `inclusion_proof`

For more information about this error, try `rustc --explain E0609`.
error: could not compile `miden-client` (lib) due to 6 previous errors

@mmagician
Copy link
Copy Markdown
Contributor

@greenhat I think this might be due to not respecting the Cargo.lock file - are you building this branch directly by checking out the codebase, or referencing it as a dependency (in the latter case it won't respect Cargo.lock IIUC)

@greenhat
Copy link
Copy Markdown
Contributor

@greenhat I think this might be due to not respecting the Cargo.lock file - are you building this branch directly by checking out the codebase, or referencing it as a dependency (in the latter case it won't respect Cargo.lock IIUC)

I think so. I use it as a dependency. Can we use ref instead of branch here for the node crates?

@igamigo
Copy link
Copy Markdown
Collaborator Author

igamigo commented Mar 30, 2026

@greenhat I think this might be due to not respecting the Cargo.lock file - are you building this branch directly by checking out the codebase, or referencing it as a dependency (in the latter case it won't respect Cargo.lock IIUC)

I think so. I use it as a dependency. Can we use ref instead of branch here for the node crates?

The node protobuf definitions changed in the last node commit or so. I've moved the Cargo.toml to rev references to make this more explicit for now and avoid that problem (I think patching just the miden-node-proto-build crate would have unblocked you as well, just for future reference).

Copy link
Copy Markdown
Collaborator

@juan518munoz juan518munoz left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks like lots tests have been flagged as .slow(), and other to needed to sync up to a certain height had it increased (example1, example2, example3).

Comment on lines +8 to +17
[test-groups.integration]
max-threads = 5

[[profile.default.overrides]]
filter = "package(miden-client-unit-tests)"
threads-required = 2

[[profile.default.overrides]]
filter = "binary(integration)"
test-group = "integration"
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this part of the realease or an optional optimization?

Comment on lines +304 to +305
shard_index: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
shard_total: [10]
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same as comment above

cd ./crates/web-client && yarn run test:clean -- --project=chromium $(SHARD_PARAMETER)

.PHONY: integration-test-web-client-opt
integration-test-web-client-opt: ## Run integration tests for the web client with optimized wasm build (chromium)
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should we add a CI job for this? Or update the existing one

});

await importDb(dbDump, page);
await clearStore(page, exported.storeName);
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Strange that we are replacing a store import for a deletion

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants